public class SmartphoneDirector {
    private SmartphoneBuilder builder;

    public  SmartphoneDirector(SmartphoneBuilder concreteBuilder){
        this.builder=concreteBuilder;
    }

    public  ProductSmartphone constructSmartphone(){
        this.builder.buildCPU();
        this.builder.buildGPU();
        this.builder.buildRAM();
        this.builder.buildROM();
        this.builder.buildScreen();
        this.builder.buildBattery();
        this.builder.buildCamera();
        return this.builder.getSmartphone();
    }

    public void setBuilder(SmartphoneBuilder builder){
        this.builder=builder;
    }


}
